package com.shunhao.extension

import android.view.View
import com.blankj.utilcode.util.ConvertUtils
import com.blankj.utilcode.util.ObjectUtils
import com.blankj.utilcode.util.ToastUtils

/**
 *类作用描述:   全局扩展类 extension
 *@author      KangGuiYang
 *创建时间      2020/7/20 10:51
 *邮箱        kangguiyang2@gmail.com
 *公司        南京舜贝佳信息科技 Shunbega.com
 */

/**
 * 批量设置控件点击事件。
 *
 * @param v 点击的控件
 * @param block 处理点击事件回调代码块
 */
fun setOnClickListener(vararg v: View?, block: View.() -> Unit) {
    val listener = View.OnClickListener { it.block() }
    v.forEach { it?.setOnClickListener(listener) }
}


/**
 * 批量设置控件点击事件。
 * vararg 可变长度
 * @param v 点击的控件
 * @param listener 处理点击事件监听器
 */
fun setOnClickListener(vararg v: View?, listener: View.OnClickListener) {
    v.forEach { it?.setOnClickListener(listener) }
}

fun Float.px():Int{
    return ConvertUtils.dp2px(this)
}

/**
 * 全局函数 判断两个属性都不为空
 */
fun <T1, T2> ifNotNull(value1: T1?, value2: T2?, bothNotNullMethod: (T1, T2) -> (Unit)) {
    if (value1 != null && value2 != null) {
        bothNotNullMethod(value1, value2)
    }
}

fun String.showToast(){
    if(!ObjectUtils.isEmpty(this)) ToastUtils.showShort(this)
}